/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package objects;

/**
 *
 * @author Marcin
 */
public class Ngbh {
    public static VinT ln[][] = new VinT[6][6];
    public VinT n[] = new VinT[6];
    
    public static VinT get(int nr,int v,int s){
        return ln[s][(nr%2)*3+v];
    }
    
    public static void Init(int w){
        for(int i=0;i<6;++i){
            for(int j=0;j<6;++j){
                ln[i][j]=new VinT();                        
            }
        }
        for(int i=0;i<3;++i){
            if(i==0){
                ln[0][0].Vert=0; ln[0][0].Triangle=0;
                ln[1][0].Vert=1; ln[1][0].Triangle=0+1;
                ln[2][0].Vert=0; ln[2][0].Triangle=0-1;
                ln[3][0].Vert=1; ln[3][0].Triangle=0+w;
                ln[4][0].Vert=2; ln[4][0].Triangle=0+w-1;
                ln[5][0].Vert=2; ln[5][0].Triangle=0+w-2;
            }else if(i==1){
                ln[0][1].Vert=1; ln[0][1].Triangle=0;
                ln[1][1].Vert=2; ln[1][1].Triangle=0-1;
                ln[2][1].Vert=2; ln[2][1].Triangle=0-2;
                ln[3][1].Vert=0; ln[3][1].Triangle=0-w;
                ln[4][1].Vert=0; ln[4][1].Triangle=0-w-1;
                ln[5][1].Vert=1; ln[5][1].Triangle=0-w+1;
            }else if(i==2){
                ln[0][2].Vert=2; ln[0][2].Triangle=0;
                ln[1][2].Vert=2; ln[1][2].Triangle=0+1;
                ln[2][2].Vert=1; ln[2][2].Triangle=0+2;
                ln[3][2].Vert=0; ln[3][2].Triangle=0-w+1;
                ln[4][2].Vert=0; ln[4][2].Triangle=0-w+2;
                ln[5][2].Vert=1; ln[5][2].Triangle=0-w+3;
            }
        }
        for(int i=0;i<3;++i){
             if(i==0){
                ln[0][3].Vert=0; ln[0][3].Triangle=0;
                ln[1][3].Vert=0; ln[1][3].Triangle=0+1;
                ln[2][3].Vert=1; ln[2][3].Triangle=0+2;
                ln[3][3].Vert=2; ln[3][3].Triangle=0+w;
                ln[4][3].Vert=2; ln[4][3].Triangle=0+w-1;
                ln[5][3].Vert=1; ln[5][3].Triangle=0+w+1;
            }else if(i==1){
                ln[0][4].Vert=1; ln[0][4].Triangle=0;
                ln[1][4].Vert=0; ln[1][4].Triangle=0-1;
                ln[2][4].Vert=0; ln[2][4].Triangle=0-2;
                ln[3][4].Vert=1; ln[3][4].Triangle=0+w-1;
                ln[4][4].Vert=2; ln[4][4].Triangle=0+w-2;
                ln[5][4].Vert=2; ln[5][4].Triangle=0+w-3;
            }else if(i==2){
                ln[0][5].Vert=2; ln[0][5].Triangle=0;
                ln[1][5].Vert=1; ln[1][5].Triangle=0+1;
                ln[2][5].Vert=2; ln[2][5].Triangle=0-1;
                ln[3][5].Vert=0; ln[3][5].Triangle=0-w;
                ln[4][5].Vert=0; ln[4][5].Triangle=0-w+1;
                ln[5][5].Vert=1; ln[5][5].Triangle=0-w+2;
            }
        }
        
    }
}
